package org.jeecg.modules.demo.yxqcyfOrder.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * @Description: 期初应付款单
 * @Author: jeecg-boot
 * @Date:   2023-03-15
 * @Version: V1.0
 */
@Data
@TableName("yx_qcyf_order")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="yx_qcyf_order对象", description="期初应付款单")
public class YxQcyfOrder implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键ID*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键ID")
    private java.lang.String id;
	/**单据编号*/
	@Excel(name = "单据编号", width = 15)
    @ApiModelProperty(value = "单据编号")
    private java.lang.String qcyfNo;
	/**期初应付金额*/
	@Excel(name = "期初应付金额", width = 15)
    @ApiModelProperty(value = "期初应付金额")
    private java.math.BigDecimal qcyfje;
    /**剩余应付金额*/
    @Excel(name = "剩余应付金额", width = 15)
    @ApiModelProperty(value = "剩余应付金额")
    private java.math.BigDecimal surplusJine;
	/**供应商*/
	@Excel(name = "供应商", width = 15)
    @ApiModelProperty(value = "供应商")
    private java.lang.String chumdwmc;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**单据时间*/
	@Excel(name = "单据时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "单据时间")
    private java.util.Date qcyfTime;
	/**部门*/
	@Excel(name = "部门", width = 15)
    @ApiModelProperty(value = "部门")
    @Dict(dictTable = "SYS_DEPART",dicCode = "ID",dicText = "DEPART_NAME")
    private java.lang.String department;
	/**业务员*/
	@Excel(name = "业务员", width = 15)
    @ApiModelProperty(value = "业务员")
    @Dict(dictTable = "SYS_USER",dicCode = "ID",dicText = "REALNAME")
    private java.lang.String poStaff;
	/**审核人*/
	@Excel(name = "审核人", width = 15)
    @ApiModelProperty(value = "审核人")
    @Dict(dictTable = "SYS_USER",dicCode = "ID",dicText = "REALNAME")
    private java.lang.String saleman;
	/**审核时间*/
	@Excel(name = "审核时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "审核时间")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private java.util.Date shTime;
	/**订单状态（0：未审，1：已审，2：已关闭）*/
	@Excel(name = "订单状态（0：未审，1：已审，2：已关闭）", width = 15)
    @ApiModelProperty(value = "订单状态（0：未审，1：已审，2：已关闭）")
    @Dict(dicCode= "checkState")
    private java.lang.Integer shenhe;
	/**附件*/
	@Excel(name = "附件", width = 15)
    @ApiModelProperty(value = "附件")
    private java.lang.String qcyfFj;
	/**项目*/
	@Excel(name = "项目", width = 15)
    @ApiModelProperty(value = "项目")
    @Dict(dictTable = "PJ_PROJECT",dicCode = "ID",dicText = "PJ_NAME")
    private java.lang.String project;
	/**付款方式*/
	@Excel(name = "付款方式", width = 15)
    @ApiModelProperty(value = "付款方式")
    @Dict(dicCode = "jsfs")
    private java.lang.Integer fkfs;

    //备注
    private String remark;
    /**
     * 租户ID
     */
    private Integer tenantId;
    /**采购订单号*/
    @Excel(name = "采购订单号", width = 15)
    @ApiModelProperty(value = "采购订单号")
    private String poOrder;
    private  String tradecode;

    //含税单价
    private Double hsdj;
    //含税金额
    private Double hsje;
    //无税单价
    private Double wsdj;
    //无税金额
    private Double wsje;
    /**税额*/
    private BigDecimal psTax;
    //税率
    @Dict(dicCode = "tax_rate")
    private Integer psTaxrat;
    //存货名称
    private String cinvname;
    /**
     * 创建人
     */
    private String createBy;


    private String sysOrgCode;
}
